package com.sea.base.ext.global

import android.content.Context
import android.net.Uri
import androidx.core.content.FileProvider
import java.io.File
import java.io.IOException

/**
 * 重置：删除文件、创建父级目录，可选创建文件
 */
fun File.reset(isRecreate: Boolean = true) {
    try {
        val parentFile = this.parentFile
        if (parentFile != null && !parentFile.exists()) {
            parentFile.mkdirs()
        }
        if (this.exists()) {
            this.delete()
        }
        if (isRecreate) {
            this.createNewFile()
        }
    } catch (e: IOException) {
        e.printStackTrace()
    }
}

fun File.createDefFileProviderUri(context: Context): Uri = FileProvider.getUriForFile(context, defAuthorFileProviderSt, this)